home *** CD-ROM | disk | FTP | other *** search
/ CD Action 8 B / cdactioncoverdisc / amber / amberhub.dxr / 00036_Field_movieUtils.KILL when done....txt < prev    next >
Text File  |  1996-11-08  |  3KB  |  90 lines

  1. Why use this? Well, it's Mac-only, but it'll allow a few Good Things to happen:
  2.  ΓÇó We get the System Folder for placing a Prefs file..
  3.  ΓÇó We can determine whether the game is currently being run from the CD or not,
  4.     suggesting that the user copy one or more files to the HD (doing it from
  5.     within the Projector, and keeping track of what goes where)
  6.  ΓÇó Setting the current fileIO path wherever we like, for checking out which files
  7.     end up where.. including game assets AND user's saved games
  8.  
  9. set util = MovieUtilities( mNew )              --creates the object...
  10.  
  11. put util( mGetVolName, the pathName )      --tells you which volume the Projector is playing from..
  12. -- "xxJumbo:"
  13.  
  14. put util( mGetSystemPath )                       --gives the "blessed" system folder; put Prefs in the "Preferences" folder if 
  15. -- "Pluto:System Folder:"                         --   it exists (see error msg below), or directly in the System folder if it doesn't... 
  16.  
  17. put util( mSetDefaultPath, util( mGetSystemPath ) )  --this sets the default fileIO path to the current system path..
  18. -- 0
  19.  
  20. put testio = fileIO( mNew, "?read","")       --This is standard means of popping up a fileIO dialog box.. confirms that above works!
  21. -- 0
  22.  
  23. --OK, so this will try to set the path to the "Preferences" folder; if that doesn't 
  24. -- exist, it'll fall back to the 'sure thing': the System Folder itself.
  25. if util( mSetDefaultPath, util( mGetSystemPath )&"Preferences:" ) = -43 then ┬¼
  26.    util( mSetDefaultPath, util( mGetSystemPath ) )
  27.  
  28. --Similarly, when we try to open an existing Prefs file, we should first check the System folder, then the Preferences folder..  
  29.  
  30. -- extract volume name from a given path name string:
  31.  
  32. on getVolName
  33.   
  34.   global utilObj
  35.   
  36.   if objectP( utilObj ) then
  37.     put utilObj( mGetVolName, the pathName ) into field "displayPath"
  38.   else
  39.     alert "Sorry...no object has been created"
  40.   end if
  41.   
  42. end getVolName
  43.  
  44. -- returns complete volume and pathName of currently active System folder
  45. -- as a string...useful for creating/opening Prefs:
  46.  
  47. on getSysPath
  48.   
  49.   global utilObj
  50.   
  51.   if objectP( utilObj ) then
  52.     put utilObj( mGetSystemPath ) into field "displayPath"
  53.   else
  54.     alert "Sorry...no object has been created"
  55.   end if 
  56.   
  57. end getSysPath
  58.  
  59. -- Set the default pathName of "volume:folder(s):" so that
  60. -- with FileIO  "?read" permission, the SFGet() Dialog opens to the
  61. -- specified folder.  This does not affect the Lingo pathName property.
  62. -- Only tested on System 7.x.
  63.  
  64. on setPath
  65.   
  66.   global utilObj
  67.   
  68.   if objectP( utilObj ) then
  69.     put field "volDirectory" into s
  70.     put utilObj( mSetDefaultPath, s ) into result
  71.     if result = -35 then
  72.       alert "No such volume exists. Please try again..."
  73.     else if result = -120 then
  74.       alert "Problem in path name. Please try again..."
  75.     else if result = -43 then
  76.       alert "No such folder exists. Please try again..."
  77.     else if result < 0 then
  78.       alert "Sorry...system error" && result && ┬¼
  79.             "prevented the folder from being set as the default."
  80.       exit
  81.     else
  82.       put field "volDirectory" into field "displayPath"
  83.     end if
  84.   else
  85.     alert "Sorry...no object has been created"
  86.   end if
  87.   
  88. end setPath
  89.  
  90.